package com.kly.user.dto;

import com.fasterxml.jackson.annotation.JsonFormat;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

public class UserAccountDto implements Serializable {
    private static final long serialVersionUID = 2270658536267949151L;
    private boolean facebookBind;

    private boolean googleBind;

    private boolean mobileBind;

    private String mobile;

    private String verificationCode;

    private String facebook;

    private String google;

    private String account;

    @NotNull(message = "Account type cannot be empty")
    private Integer accountType;

    private long loginType;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date effectiveDate;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date expiryDate;

    private int autoRenew;

    private String googleName;

    private String facebookName;

    private String userName;

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public boolean isFacebookBind() {
        return facebookBind;
    }

    public void setFacebookBind(boolean facebookBind) {
        this.facebookBind = facebookBind;
    }

    public boolean isGoogleBind() {
        return googleBind;
    }

    public void setGoogleBind(boolean googleBind) {
        this.googleBind = googleBind;
    }

    public boolean isMobileBind() {
        return mobileBind;
    }

    public void setMobileBind(boolean mobileBind) {
        this.mobileBind = mobileBind;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getVerificationCode() {
        return verificationCode;
    }

    public void setVerificationCode(String verificationCode) {
        this.verificationCode = verificationCode;
    }

    public String getFacebook() {
        return facebook;
    }

    public void setFacebook(String facebook) {
        this.facebook = facebook;
    }

    public String getGoogle() {
        return google;
    }

    public void setGoogle(String google) {
        this.google = google;
    }

    public Integer getAccountType() {
        return accountType;
    }

    public void setAccountType(Integer accountType) {
        this.accountType = accountType;
    }

    public long getLoginType() {
        return loginType;
    }

    public void setLoginType(long loginType) {
        this.loginType = loginType;
    }

    public Date getEffectiveDate() {
        return effectiveDate;
    }

    public void setEffectiveDate(Date effectiveDate) {
        this.effectiveDate = effectiveDate;
    }

    public Date getExpiryDate() {
        return expiryDate;
    }

    public void setExpiryDate(Date expiryDate) {
        this.expiryDate = expiryDate;
    }

    public int getAutoRenew() {
        return autoRenew;
    }

    public void setAutoRenew(int autoRenew) {
        this.autoRenew = autoRenew;
    }

    public String getGoogleName() {
        return googleName;
    }

    public void setGoogleName(String googleName) {
        this.googleName = googleName;
    }

    public String getFacebookName() {
        return facebookName;
    }

    public void setFacebookName(String facebookName) {
        this.facebookName = facebookName;
    }
}
